home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
cpp_libs
/
awe2-0_1.lha
/
awe2-0.1
/
Src
/
RCS
/
Awesime.h,v
< prev
next >
Wrap
Text File
|
1989-02-23
|
3KB
|
172 lines
head 3.2;
branch ;
access ;
symbols ;
locks grunwald:3.2; strict;
comment @ * @;
3.2
date 89.02.20.15.31.48; author grunwald; state Exp;
branches ;
next 3.1;
3.1
date 88.12.20.13.49.29; author grunwald; state Exp;
branches ;
next 1.2;
1.2
date 88.10.30.13.05.29; author grunwald; state Exp;
branches ;
next 1.1;
1.1
date 88.09.18.16.42.01; author grunwald; state Exp;
branches ;
next ;
desc
@@
3.2
log
@Start using Gnu library heaps for schedulers
@
text
@// This may look like C code, but it is really -*- C++ -*-
//
// Copyright (C) 1988 University of Illinois, Urbana, Illinois
//
// written by Dirk Grunwald (grunwald@@cs.uiuc.edu)
//
#ifndef AWESIMEH
#define AWESIMEH
//
// Awesime.h
//
// Awesime is a component of the Discret Event Simulation Environment.
// The major purpose of Awesime is to provide a virtual function
// resetInternalState which is used to reset a simulation.
// In addition, each Awesime can provide a function 'reportState' which
// lists the current state of that simulation component in a standard
// format.
//
// These virtuals are used to implement Resetables and Reportables,
// and the Awesime serves to define a simulation environment.
//
#include <stream.h>
#ifdef __GNUG__
#include <std.h>
#else
#ifndef TRUE // disable if already done #define TRUE 1...
#ifndef bool
enum bool
{
FALSE = 0,
TRUE = 1
};
#endif
#endif
#include "Pragma.h"
PRAGMA_LINKAGE_C
#include "libc.h"
// #include "stdlib.h"
#include "osfcn.h"
extern void bcopy(void *, void *, int);
extern void bzero(void *, int);
PRAGMA_LINKAGE
#endif
class Awesime;
typedef Awesime *AwesimePtr;
typedef void *VoidPtr;
extern const int SubClassResponsibility;
class Awesime {
protected:
int debugFlag;
public :
inline Awesime(bool xdebug = 0) {
debugFlag = xdebug;
}
inline ~Awesime(){};
virtual bool debug();
virtual bool debug(bool x);
virtual void classResetInternalState();
virtual void classReportState(ostream&);
virtual void classPrintOn(ostream& s);
virtual const char* classIsA();
virtual AwesimePtr classCopy();
virtual AwesimePtr classDeepCopy();
virtual void subClassResponsibility(char *name = "");
};
inline ostream&
operator<<(ostream& strm, const Awesime& ob)
{
ob.classPrintOn(strm);
return strm;
}
#endif AWESIME
@
3.1
log
@Steay version
@
text
@@
1.2
log
@*** empty log message ***
@
text
@d40 1
a40 3
#ifdef _CPPTWO_
#pragma linkage C
#endif /*_CPPTWO_*/
d42 2
d47 1
d51 2
a52 3
#ifdef _CPPTWO_
#pragma linkage
#endif /*_CPPTWO_*/
@
1.1
log
@Initial revision
@
text
@d1 6
d30 2
d37 2
d81 2
@